package com.zhang.yunfu_norevocation.entity.comm;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import javax.validation.constraints.Max;
import javax.validation.constraints.Min;
import java.util.Date;

@ApiModel(value = "查询处方列表入参")
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public class QueryPrescriptionREQ extends BaseDataReq {

    /**
     * 处方状态。枚举。1：待审核，2：已审核，3：已驳回
     */
    @ApiModelProperty(value = "请输入处方状态对应的数字——1：待审核，2：已审核，3：已驳回。", required = true)
    @Min(0)
    @Max(3)
    private String prescriptStatus;

    @ApiModelProperty(value = "请求页码", required = true)
    @Min(1)
    private Integer pageNum;

    @ApiModelProperty(value = "请求记录数", required = true)
    @Min(1)
    private Integer pageSize;

    @ApiModelProperty(value = "药师id,预留，后期可能用", hidden = true)
    private String doctorId;

    @ApiModelProperty(value = "开始时间start,格式：yyyy-MM-dd")
    @JsonFormat(locale="zh", timezone="GMT+8", pattern="yyyy-MM-dd")
    private Date startTime;


    @ApiModelProperty(value = "结束时间end,格式：yyyy-MM-dd")
    @JsonFormat(locale="zh", timezone="GMT+8", pattern="yyyy-MM-dd")
    private Date endTime;

    @ApiModelProperty(value = "患者姓名")
    private String patientName;

    @ApiModelProperty(value = "医院id",hidden = true)
    private String hospitalId;

    @ApiModelProperty(value = "处方编号")
    private String prescriptNo;

    @ApiModelProperty(value = "发药状态:1：待发药，2：已发药，3：已退费。")
    private String dispenseStatus;

    @ApiModelProperty(value = "药店Id",hidden = true)
    private String pharmacyId;

    @ApiModelProperty(value = "处方编号")
    private String orderNo;
}
